package ar.edu.itba.it.cg.grupo01.impl.shape;

import java.util.Collection;

import javax.vecmath.Point2f;
import javax.vecmath.Point3f;
import javax.vecmath.Vector3f;

import ar.edu.itba.it.cg.grupo01.api.Intersection;
import ar.edu.itba.it.cg.grupo01.api.Ray;
import ar.edu.itba.it.cg.grupo01.api.shape.Shape;
import ar.edu.itba.it.cg.grupo01.impl.IntersectionFactory;

public class DummyShape extends AbstractShape {

	public DummyShape(IntersectionFactory intersectionFactory) {
		super(intersectionFactory);
	}

	@Override
	public boolean containedInAABB(AABB box) {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Point3f getMaxXYZ() {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Point3f getMinXYZ() {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Intersection<? extends Shape> intersects(Ray ray) {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Vector3f getNormal(Point3f point) {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Shape getTransformedShape() {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Collection<Point3f> getVertices() {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Point2f getUVCoordinates(Point3f point) {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

	@Override
	public Point3f getUVWCoordinates(Point3f point) {
		throw new UnsupportedOperationException("I'm dummy or you are dummy?");
	}

}